#define  _CRT_SECURE_NO_WARNINGS 1

//#include<bits/stdc++.h>
//#define sd(n) scanf("%d",&n) 
//#define sld(n) scanf("%lld",&n)
//#define pd(n) printf("%d", (n))
//#define pld(n) printf("%lld", n)
//#define all(x) (x).begin(),(x).end()
//#define rall(x) (x).rbegin(),(x).rend()
//const int N = 2e5;
//const int maxn = 1e6;
//typedef long long int ll;
//using namespace std;
////----------------------------------------------------------------------------//
//
//void solve()
//{
//
//}
//
//int main()
//{
//	int T;
//	sd(T);
//	while (T--)
//	{
//		solve();
//	}
//	return 0;
//}


//#include<bits/stdc++.h>
//using namespace std;
//#define all(x) (x).begin(),(x).end()
//#define rall(x) (x).rbegin(),(x).rend()
//const int N = 2e5 + 10;
//#define INF 0x3f3f3f3f;
//typedef long long int ll;
//#define close(); std::ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);
////----------------------------------------------------------------------------//
//int n;
//void solve()
//{
//    cin >> n;
//
//    string s;
//    cin >> s;
//    s = '?' + s;
//
//    int cnt = 0;
//    for (int i = 1; i <=n / 2; i++)
//    {
//        if (s[i] == s[n - i + 1]) continue;
//        else
//        {
//            int j = i;
//            while (j <=n / 2 && s[j] != s[n - j + 1]) j++;
//            cnt++;
//            j = i;
//        }
//    }
//
//    if (cnt > 1) cout << "NO" << '\n';
//    else cout << "YES" << '\n';
//
//
//
//}
//
//int main()
//{
//    close();
//   /* int T;
//    cin >> T;
//    while (T--) solve();*/
//
//    int i = 1;
//    for (i = 1; i <= 5; i++)
//    {
//        cout << i << " ";
//    }
//
//    cout << "hehe" << '\n';
//    return 0;
//}


//#include<bits/stdc++.h>
//using namespace std;
//#define all(x) (x).begin(),(x).end()
//#define rall(x) (x).rbegin(),(x).rend()
//const int N = 2e5 + 10;
//#define INF 0x3f3f3f3f;
//typedef long long int ll;
//#define close(); std::ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);
////----------------------------------------------------------------------------//
//int a, b, c;
//void solve()
//{
//    cin >> a >> b >> c;
//
//    int sum1 = abs(a - b) + 1;
//    int tt = sum1 + sum1 - 2;
//    if (tt % 2 != 0)
//    {
//        cout << -1 << '\n';
//        return;
//    }
//    else
//    {
//        int sum2 = tt;
//        int mid = (sum2 / 2) + 1;
//        if (c >= mid) cout << c - abs(a - b) << '\n';
//        else cout << c + abs(a - b) << '\n';
//    }
//
//
//}
//
//int main()
//{
//    close();
//    int T;
//    cin >> T;
//    while (T--) solve();
//    return 0;
//}


#include<bits/stdc++.h>
using namespace std;
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
const int N = 2e5 + 10;
#define INF 0x3f3f3f3f;
typedef long long int ll;
#define close(); std::ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);
//----------------------------------------------------------------------------//
int a, b, c;
void solve()
{
    cin >> a >> b >> c;

    int sum1 = abs(a - b) + 1;
    int tt = sum1 + sum1 - 2;
    if (tt % 2 != 0||tt<3)
    {
        cout << -1 << '\n';
        return;
    }
    else
    {
        int sum2 = tt;
        int mid = (sum2 / 2) + 1;
        if (c >= mid) cout << c - abs(a - b) << '\n';
        else cout << c + abs(a - b) << '\n';
    }


}

int main()
{
    close();
    int T;
    cin >> T;
    while (T--) solve();
    return 0;
}